Resampling output signals of QMF based audio codecs

ABSTRACT

An apparatus for processing an audio signal includes a configurable first audio signal processor for processing the audio signal in accordance with different configuration settings to obtain a processed audio signal, wherein the apparatus is adapted so that different configuration settings result in different sampling rates of the processed audio signal. The apparatus furthermore includes n analysis filter bank having a first number of analysis filter bank channels, a synthesis filter bank having a second number of synthesis filter bank channels, a second audio processor being adapted to receive and process an audio signal having a predetermined sampling rate, and a controller for controlling the first number of analysis filter bank channels or the second number of synthesis filter bank channels in accordance with a configuration setting.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of copending U.S. application Ser.No. 13/762,614, filed Feb. 8, 2013, which is a continuation of copendingInternational Application No. PCT/EP2011/063848, filed Aug. 11, 2011,which claims priority from U.S. Provisional Application No. 61/373,126,filed Aug. 12, 2010, which are each incorporated herein in its entiretyby this reference thereto.

The present invention relates to audio processing and, in particular toan apparatus and method for resampling output signals of QMF based audiocodecs.

BACKGROUND OF THE INVENTION

Most low end audio consumer electronics use digital to analogueconverters with fixed sampling rates because of cost reasons. But whenmultimedia enabled devices may be used in order to support differentkinds of audio sources, the process of resampling is unavoidable,because media files might be encoded using different sampling rates, andalso communication codecs use different sampling rates. Choosingdifferent sample rates is an important matter in regard to the operatingpoints of different audio codecs and processing methods. The moredifferent sample rates that need to be supported, the more complex isthe sample rate adaption and resampling task.

For example in the current MPEG-D USAC (USAC=Unified Speech and AudioCoding) reference model, some uncommon (not an integer multiple of 16000Hz or 22050 Hz) sampling rates are employed. These rates are the resultof a compromise between two aspects: First, a nominal sampling rate ofthe integrated ACELP coding tool to which it was specifically designedand which, to a degree, dictates the overall system sampling rate, andsecond, the desire to increase the sampling rate together with bit rateto be able to code greater audio bandwidth and/or to realizescalability.

Partly, the uncommon sampling rates are also a legacy from the AMR-WB+system which parts of the reference model have been deduced from. Also,as common in practice in low bit rate audio coding, the sampling rateand thus the audio bandwidth are being greatly reduced at low bit rateUSAC operating points.

At low USAC bit rates in particular the currently employed samplingrates exhibit both of the above mentioned problems. They are notcompatible with low-cost hardware D/A converters and would involve anadditional post-resampling step. Audio bandwidth is limited to theNyquist frequency, which is well below the upper limit of the humanaudible range.

To adapt the output sampling rate of an audio processing unit,additional resampling functional modules are being used for thispurpose, requiring a significant amount of additional computationalresources. The technology used for this purpose has not changed in a lotof time, consisting basically of an interpolator and optional up samplerand down sampler modules.

SUMMARY

According to an embodiment, an apparatus for processing an audio signalmay have: a configurable first audio signal processor for processing theaudio signal in accordance with different configuration settings toacquire a processed audio signal, wherein the apparatus is adapted sothat different configuration settings result in different sampling ratesof the processed audio signal, an analysis filter bank having a firstnumber of analysis filter bank channels, a synthesis filter bank havinga second number of synthesis filter bank channels, a second audioprocessor being adapted to receive and process an audio signal having apredetermined sampling rate, and a controller for controlling the firstnumber of analysis filter bank channels and the second number ofsynthesis filter bank channels in accordance with a configurationsetting provided to the configurable first audio signal processor, sothat an audio signal output of the synthesis filter bank has thepredetermined sampling rate or a sampling rate being different from thepredetermined sampling rate and being closer to the predeterminedsampling rate than a sampling rate of an analysis filter bank inputsignal. According to another embodiment, an apparatus for upmixing asurround signal may have: an analysis filter bank for transforming adownmixed time domain signal into a time-frequency domain to generate aplurality of downmixed subband signals, at least two upmix units forupmixing the plurality of subband signals to acquire a plurality ofsurround subband signals, at least two signal adjuster units foradjusting the number of surround subband signals, wherein the at leasttwo signal adjuster units are adapted to receive a first plurality ofinput surround subband signals, wherein the at least two signal adjusterunits are adapted to output a second plurality of output surroundsubband signals, and wherein the number of the first plurality of inputsurround subband signals and the number of the second plurality ofoutput surround subband signals is different, a plurality of synthesisfilter bank units for transforming a plurality of output surroundsubband signals from a time-frequency domain to a time domain to acquiretime domain surround output signals, and a controller being adapted toreceive a configuration setting and being adapted to control the numberof channels of the analysis filter bank, to control the number ofchannels of the synthesis filter bank units, to control the number ofthe first plurality of input surround subband signals of the signaladjuster units, and to control the number of the second plurality ofoutput surround subband signals of the signal adjuster units based onthe received configuration setting.

According to another embodiment, a method for processing an audio signalmay have the steps of: processing an audio signal in accordance withdifferent configuration settings to acquire a first processed audiosignal, so that different configuration settings result in differentsampling rates of the first processed audio signal, controlling a firstnumber of analysis filter bank channels of an analysis filter bank and asecond number of synthesis filter bank channels of a synthesis filterbank in accordance with a configuration setting, so that an audio signaloutput by the synthesis filter bank has the predetermined sampling rateor a sampling rate being different from the predetermined sampling rateand being closer to the predetermined sampling rate than the samplingrate of an input signal into the analysis filter bank, and processingthe audio signal output having the predetermined sampling rate.

Another embodiment may have a computer program for performing the methodfor processing an audio signal, which method may have the steps of:processing an audio signal in accordance with different configurationsettings to acquire a first processed audio signal, so that differentconfiguration settings result in different sampling rates of the firstprocessed audio signal, controlling a first number of analysis filterbank channels of an analysis filter bank and a second number ofsynthesis filter bank channels of a synthesis filter bank in accordancewith a configuration setting, so that an audio signal output by thesynthesis filter bank has the predetermined sampling rate or a samplingrate being different from the predetermined sampling rate and beingcloser to the predetermined sampling rate than the sampling rate of aninput signal into the analysis filter bank, and processing the audiosignal output having the predetermined sampling rate, when the computerprogram is executed by a computer or processor.

The present invention is based on the finding that by varying thefrequency domain representation signal bandwidth, the equivalentresulting time domain signal will have a different sampling rate as inthe case if no bandwidth change would have been done in frequencydomain. The operation of bandwidth change is cheap, since it can beaccomplished by deleting or adding frequency domain data.

The conversion step from frequency domain back to time domain may bemodified in order to be able to handle the different frequency domainbandwidth (transform length).

The modified bandwidth frequency domain signal representation can alsobe extended to the whole signal processing method instead of beinglimited to the filter bank, thus allowing the whole process takeadvantage of the actual target output signal characteristics.

Even if not all audio signal sources can be brought to one single outputsample rate, reducing the amount of different output sample ratesalready saves a lot of computational resources on a given device.

The complexity of a filter bank is directly related to its length. If afilter bank time domain signal synthesis transform is modified for downsampling by reducing the transform length, its complexity will decrease.If it is used for up sampling by enlarging its transform length itscomplexity will increase, but still far below the complexity that may beuseful for an additional resampler with equivalent signal distortioncharacteristics. Also the signal distortion in total will be less, sinceany additional signal distortion caused by an additional resampler willbe eliminated.

According to an embodiment, the analysis filter bank is adapted totransform the analysis filter bank input signal being represented in atime domain into a first time-frequency domain audio signal having aplurality of first subband signals, wherein the number of first subbandsignals is equal to the first number of analysis filter bank channels.According to this embodiment, the apparatus further comprises a signaladjuster being adapted to generate a second time-frequency domain audiosignal having a plurality of second subband signals from the firsttime-frequency-domain audio signal based on the configuration setting(conf), such that the number of second subband signals of the secondtime-frequency domain audio signal is equal to the number of synthesisfilter bank channels. The number of second subband signals of the secondtime-frequency domain audio signal is different from the number ofsubband signals of the first time-frequency domain audio signal.Furthermore, the synthesis filter bank is adapted to transform thesecond time-frequency domain audio signal into a time domain audiosignal as the audio signal output of the synthesis filter bank.

In another embodiment, the signal adjuster may be adapted to generatethe second time-frequency domain audio signal by generating at least oneadditional subband signal. In a further embodiment, the signal adjusteris adapted to generate at least one additional subband signal byconducting spectral band replication to generate at least one additionalsubband signal. In another embodiment, the signal adjuster is adapted togenerate a zero signal as an additional subband signal.

According to an embodiment, the analysis filter bank is a QMF(Quadrature Mirror Filter) analysis filter bank and the synthesis filterbank is a QMF synthesis filter bank. In an alternative embodiment, theanalysis filter bank is an MDCT (Modified Discrete Cosine Transform)analysis filter bank and the synthesis filter bank is an MDCT synthesisfilter bank.

In an embodiment, the apparatus may comprise an additional resamplerbeing adapted to receive a synthesis filter bank output signal having afirst synthesis sampling rate. The additional resampler may resample thesynthesis filter bank output signal to receive a resampled output signalhaving a second synthesis sampling rate. By combing the apparatusaccording to an embodiment and an additional resampler it is possible todecrease the complexity of the employed resampler. Instead of employinga high-complexity resampler, two low-complexity resampler may beemployed.

In another embodiment, the apparatus may be adapted to feed a synthesisfilter bank output signal having a first synthesis sampling rate intothe analysis filter bank as an analysis filter bank input signal. Bythis, again, the complexity of the apparatus according to an embodimentmay be reduced. Instead of employing an analysis filter bank and asynthesis filter bank having a huge number of analysis and synthesisfilterbank channels, the number of filter bank channels will besignificantly reduced. This is achieved by repeating the analysis andsynthesis transformations one or more times. According to an embodiment,the analysis and synthesis filter banks may be adapted such that thenumber of analysis and synthesis filter bank channels may be changeablefor each transformation cycle (one transformation cycle comprises ananalysis step and a synthesis step).

The controller may be adapted to receive a configuration settingcomprising an index number. Furthermore, the controller may then beadapted to determine the sampling rate of the processed audio signal orthe predetermined sampling rate based on the index number and a lookuptable. According to these embodiments, it is not necessary to transmitthe explicit numbers of analysis and synthesis filter bank channels ineach configuration setting, but instead, a single index numberidentifying the particular configuration is transmitted. This reducesthe bit rate needed for transmitting a configuration setting.

According to an embodiment, the controller is adapted to determine thefirst number of analysis filter bank channels or the second number ofsynthesis filter bank channels based on a tolerable error. In anembodiment, the controller may comprise an error comparator forcomparing the actual error with a tolerable error. Furthermore, theapparatus may be adapted to obtain the tolerable error from theconfiguration setting. According to these embodiments, it may bepossible to specify the degree of accuracy of the resampling. It may beappreciated that in certain situations, the accuracy of the resamplingcan be reduced to also reduce on the other hand the complexity of theanalysis and synthesis filter bank and thus to reduce the complexity ofthe calculation.

According to another embodiment, an apparatus for upmixing a surroundsignal is provided. The apparatus comprises an analysis filter bank fortransforming a downmixed time domain signal into a time-frequency domainto generate a plurality of downmixed subband signals. Moreover, theapparatus comprises at least two upmix units for upmixing the pluralityof subband signals to obtain a plurality of surround subband signals.Furthermore, the apparatus comprises at least two signal adjuster unitsfor adjusting the number of surround subband signals. The at least twosignal adjuster units are adapted to receive a first plurality of inputsurround subband signals. The at least two signal adjuster units areadapted to output a second plurality of output surround subband signals,and wherein the number of the first plurality of input surround subbandsignals and the number of the second plurality of output surroundsubband signals is different. Moreover, the apparatus comprises aplurality of synthesis filter bank units for transforming a plurality ofoutput surround subband signals from a time-frequency domain to a timedomain to obtain time domain surround output signals.

Furthermore, the apparatus comprises a controller which is adapted toreceive a configuration setting. The controller is moreover adapted tocontrol the number of channels of the analysis filter bank, to controlthe number of channels of the synthesis filter bank units, to controlthe number of the first plurality of input surround subband signals ofthe signal adjuster units, and to control the number of the secondplurality of output surround subband signals of the signal adjusterunits based on the received configuration setting.

BRIEF DESCRIPTION OF THE DRAWINGS

Embodiments of the present invention will be detailed subsequentlyreferring to the appended drawings, in which:

FIG. 1 illustrates an apparatus for processing an audio signal accordingto an embodiment,

FIGS. 2a-2c depict the transformation of time domain samples intotime-frequency domain samples,

FIG. 3a-3b illustrate the transformation of time-frequency domainsamples into time domain samples,

FIG. 4 depict in a further illustration the transformation oftime-frequency domain samples into time domain samples,

FIG. 5 illustrate two diagrams depicting a basic concept of anembodiment,

FIG. 6 illustrates an apparatus according to a further embodiment,

FIGS. 7a-7b show lookup tables in accordance with an embodiment,

FIG. 8 illustrates an apparatus according to an embodiment employing SBRprocessing,

FIG. 9 depicts an apparatus according to another embodiment employingQMF analysis and synthesis filter banks for upmixing an MPEG Surroundsignal with a resampled sampling rate according to an embodiment

FIG. 10 illustrates an apparatus according to another embodimentemploying SBR processing,

FIG. 11 depicts an apparatus according to another embodiment comprisingan additional resampler,

FIG. 12 illustrates an apparatus employing QMF as resampler according toan embodiment,

FIG. 13 shows an apparatus employing an additional resampler accordingto an embodiment,

FIG. 14 illustrates an apparatus employing QMF as resampler according toanother embodiment,

FIG. 15 depicts an apparatus according to a further embodiment whereinthe apparatus is adapted to feed the synthesis filter bank output intothe analysis filter bank to conduct another transformation cycle,

FIG. 16 illustrates a controller according to another embodimentcomprising an error comparator,

FIG. 17 shows a flow chart depicting a method for determining the numberof analysis and synthesis filter bank channels, respectively, and

FIG. 18 illustrates a controller according to a further embodimentcomprising an error comparator.

DETAILED DESCRIPTION OF THE INVENTION

FIG. 1 illustrates an apparatus for processing an audio signal accordingto an embodiment. An audio signal s₀ is fed into the apparatus. Inanother embodiment, s₀ may be a bit stream, in particular an audio databit stream. Moreover, the apparatus receives a configuration settingconf. The apparatus comprises a configurable first audio signalprocessor 110 for processing the audio signal s₀ in accordance with theconfiguration setting conf to obtain a processed audio signal s₁.Furthermore, the apparatus for processing an audio signal is adapted sothat different configuration settings conf result in different samplingrates of the processed audio signal. The apparatus furthermore comprisesan analysis filter bank 120 having a first number of analysis filterbank channels c₁ and a synthesis filter bank 130 having a second numberof synthesis filter bank channels c₂. Moreover, the apparatus comprisesa second audio processor 140 being adapted to receive and process anaudio signal s₂ having a predetermined sampling rate. Furthermore, theapparatus comprises a controller 150 for controlling the first number ofanalysis filter bank channels c₁ or the second number of synthesisfilter bank channels c₂ in accordance with a configuration setting confprovided to the configurable first audio signal processor 110, so thatan audio signal output s₂ by the synthesis filter bank 130 has thepredetermined sampling rate or a sampling rate being different from thepredetermined sampling rate, but which is closer to the predeterminedsampling rate than the sampling rate of an input signal s₁ into theanalysis filter bank 120.

The analysis filter bank and the synthesis filter bank might be adaptedsuch that the number of analysis channels and the number of synthesischannels are configurable and that their number might be determined byconfigurable parameters.

In FIGS. 2a-2c , the transformation of time domain samples intotime-frequency domain samples is illustrated. The left side of FIG. 2aillustrates a plurality of samples of a (processed) audio signal in atime domain. On the left side of FIG. 2 a, 640 time samples areillustrated (the latest 64 time samples are referred to as “new timesamples” while the remaining 576 time samples are referred to as oldtime samples. In the embodiment depicted by FIG. 2a , a first step of aShort Time Fourier Transform (STFT) is conducted. The 576 old timesamples and the 64 new time samples are transformed to 64 frequencyvalues, i.e. 64 subband sample values are generated.

In a subsequent step illustrated in FIG. 2b , the oldest 64 time samplesof the considered 640 time samples are discarded. Instead, 64 new timesamples are considered together with the remaining 576 alreadyconsidered time samples available in the processing step illustrated byFIG. 2a . This could be regarded as shifting a sliding window having alength of 640 time samples by 64 time samples in each processing step.Again, also in the processing step depicted in FIG. 2b , further 64subband samples are generated from the considered 640 time samples (576old time samples and 64 new time samples considered for the first time).By this, a second set of 64 subband values is generated. One could saythat 64 new subband samples are generated by taking 64 new time samplesinto account.

In the subsequent step depicted in FIG. 2c , again, the sliding windowis shifted by 64 time samples, i.e. the oldest 64 time values arediscarded and 64 new time samples are taken into account. 64 new subbandsamples are generated based on the 576 old time samples and 64 new timesamples. As can been seen in FIG. 2c , right side, a new set of 64 newsubband values has been generated by conducting STFT.

The process illustrated in FIGS. 2a-2c is conducted repeatedly togenerate additional subband samples from additional time samples.

Explained in general terms, 64 new time samples are needed to generate64 new subband samples.

In the embodiment illustrated by FIGS. 2a-2c , each set of the generatedsubband samples represents the subband samples at a particular timeindex in a time-frequency domain. I.e., the 32^(nd) subband sample oftime index j represents a signal sample S[32,j] in a time-frequencydomain. Regarding a certain time index in the time-frequency domain, 64subband values exist for that time index, while for each point-in-timein the time domain, at most a single signal value exist. On the otherhand, the sampling rate of each of the 64 frequency bands is only 1/64of the signal in the time-domain.

It is understood by a person skilled in the art that the number ofsubband signals, which are generated by an analysis filter bank dependson the number of channels of the analysis filter bank. For example, theanalysis filter bank might comprise 16, 32, 96 or 128 channels, suchthat 16, 32, 96, or 128 subband signals in a time frequency domain mightbe generated from e.g. 16, 32, 96 or 128 time samples, respectively.

FIG. 3a-3b illustrate the transformation of time-frequency domainsamples into time domain samples:

The left side of FIG. 3a illustrates a plurality of sets of subbandsamples in a time-frequency domain. In more detail, each longitudinalbox in FIG. 3a represents a plurality of 64 subband samples in atime-frequency domain. A sliding window in the time-frequency domaincovers time indexes each comprising 64 subband samples in thetime-frequency domain. By conducting an Inverse Short Time FourierTransform (ISTFT), 64 time samples are generated from the considered (10times 64) subband samples, as depicted in FIG. 3a , right side.

In a subsequent processing step illustrated in FIG. 3b , the oldest setof 64 subband values is discarded. Instead, the sliding window nowcovers a new set of 64 subband values having a different time index inthe time-frequency domain. 64 new time samples are generated in the timedomain from the considered 640 subband samples (576 old subband samplesand 64 new subband samples considered for the first time). FIG. 3b ,right side, illustrates the situation in the time domain. FIG. 3bdepicts 64 old time samples generated by conducting the ISTFT asillustrated in FIG. 3a are depicted together with the 64 new timesamples generated in the processing step of FIG. 3 b.

The process illustrated in FIGS. 3a-3b is conducted repeatedly togenerate additional time samples from additional subband samples.

To explain the concept of the synthesis filter bank 130 in generalterms, 64 new subband samples in a time-frequency domain are needed togenerate 64 new time samples in a time domain.

It is understood by a person skilled in the art, that the number of timesamples which are generated by a synthesis filter bank depends on thenumber of channels of the synthesis filter bank. For example, thesynthesis filter bank might comprise 16, 32, 96 or 128 channels, suchthat 16, 32, 96, or 128 time samples in a time domain might be generatedfrom e.g. 16, 32, 96 or 128 subband samples in a time-frequency domain,respectively.

FIG. 4 presents another illustration depicting the transformation oftime-frequency domain samples into time domain samples. In eachprocessing step, an additional 64 subband samples are considered (i.e.the 64 subband samples of the next time index in a time-frequencydomain). Taking the latest 64 subband samples into account, 64 new timesamples can be generated. The sampling rate of the signal in the timedomain is 64 times the sampling rate of each one of the 64 subbandsignals.

FIG. 5 illustrates two diagrams depicting a basic concept of anembodiment. The upper part of FIG. 5 depicts a plurality of subbandsamples of a signal in a time-frequency domain. The abscissa representstime. The ordinate represents frequency. FIG. 5 differs from FIG. 4 inthat for each time index, the signal in the time-frequency domaincontains three additional subband samples (marked with “x”). I.e. thethree additional subbands have been added such that the signal in thetime-frequency domain does not only have 64 subband signals, but nowdoes have 67 subband signals. The diagram illustrated at the bottom ofFIG. 5 illustrates time samples of the same signal in the time domainafter conducting an Inverse Short Time Fourier Transform (ISTFT). As 3subbands have been added in the time-frequency domain, the 67 additionalsubband samples of a particular time index in the time-frequency domaincan be used to generate 67 new time samples of the audio signal in thetime domain. As new 67 time samples have been generated in the timedomain using the 67 additional subband samples of a single time index inthe time-frequency domain, the sampling rate of the audio signal s₂ inthe time domain as outputted by the synthesis filter bank 130 is 67times the sampling rate of each one of the subband signals. As could beseen above, employing 64 channels in the analysis filter bank 120results in a sampling rate of each subband signal of 1/64 of thesampling rate of the processed audio signal s₁ as fed into the analysisfilter bank 120. Regarding the analysis filter bank 120 and thesynthesis filter bank 130 together, the analysis filter bank 120 having64 channels and the synthesis filter bank 130 having 67 channels resultsin a sampling rate of the signal s₂ outputted by the synthesis filterbank of 67/64 times the sampling rate of the audio signal s₁ beinginputted into the analysis filter bank 120.

The following concept can be derived: Consider a (processed) audiosignal s₁ that is fed into the analysis filter bank 120. Assuming thatthe filter bank has c₁ channels and, assuming further that the samplingrate of the processed audio signal is sr₁, then the sampling rate ofeach subband signal is sr₁/c₁. Assuming further that the synthesisfilter bank has c₂ channels and assuming that the sampling rate of eachsubband signal is sr_(subband), then the sampling rate of the audiosignal s₂ being outputted by the synthesis filter bank 130 isc₂·sr_(subband). That means, the sampling rate of the audio signal beingoutputted by the synthesis filter bank 130 is c₂/c₁·sr₁. Selecting c₂different from c₁ means that the sampling rate of the audio signal s₂being outputted by the synthesis filter bank 130 can be set differentlyfrom the sampling rate of the audio signal being inputted into theanalysis filter bank 120.

Choosing c₂ different from c₁ does not only mean that the number ofanalysis filter bank channels differs from the number of synthesisfilter bank channels. Moreover, the number of subband signals beinggenerated by the analysis filter bank 120 by the STFT differs from thenumber of subband signals that are needed when conducting the ISTFT bythe synthesis filter bank 130.

Three different situations can be distinguished:

If c₁ is equal to c₂, the number of subband signals that are generatedby the analysis filter bank 120 is equal to the number of subbandsignals needed by the synthesis filter bank 130 for the ISTFT. Nosubband adjustment is needed.

If c₂ is smaller than c₁, the number of subband signals generated by theanalysis filter bank 120 is greater than the number of subband signalsneeded by the synthesis filter bank 130 for synthesis. According to anembodiment, the highest frequency subband signals might be deleted. Forexample, if the analysis filter bank 120 generates 64 subband signalsand if the synthesis filter bank 130 only needs 61 subband signals, thethree subband signals with the highest frequency might be discarded.

If c₂ is greater than c₁, then the number of subband signals generatedby the analysis filter bank 120 is smaller than the number of subbandsignals needed by the synthesis filter bank 130 for synthesis.

According to an embodiment, additional subband signals might begenerated by adding zero signals as additional subband signals. A zerosignal is a signal where the amplitude values of each subband sample areequal to zero.

According to another embodiment, additional subband signals might begenerated by adding pseudorandom subband signals as additional subbandsignals. A pseudorandom subband signal is a signal where the values ofeach subband sample comprise pseudorandom data, wherein the pseudorandomdata has to be determined pseudorandomly from an allowed value range.For example, the pseudorandomly chosen amplitude values of a sample haveto be smaller than a maximum amplitude value and the phase values of asample have to be in the range between 0 and 2π (inclusive).

In another embodiment, additional subband signals might be generated bycopying the sample values of the highest subband signal and to use themas sample values of the additional subband signals. In anotherembodiment, the phase values of the highest subband are copied and usedas sample values for an additional subband, while the amplitude valuesof the highest subband signal are multiplied with a weighting factor,e.g. to decrease their weight and are then used as amplitude values ofthe subband samples of the additional subband signal. For example, allamplitude values in an additional subband signal might be multipliedwith the weighting factor 0.9. If two additional subband signals areneeded, the amplitude values of the highest subband signal might bemultiplied with a weighting factor 0.9 to generate a first additionalsubband signal, while all amplitude values might be multiplied with aweighting factor 0.8 to generate a second additional subband signal.

Most highly efficient audio codecs use parametric signal enhancements,which in turn frequently use a QMF (Quadrature Mirror Filter) (i.e.MPEG-4 HE-AAC), where the concepts proposed in the above-describedembodiments may also be employed. QMF based codecs use typically aN_(nominal)=64 band polyphase filter structure to convert sub bands intoa time domain output signal of a nominal sampling frequencyf_(s,nominal). By changing the amount of output bands, by adding subbands containing a zero signal, or removing some of the higher bands(which might be empty anyway), the output sampling f_(s) rate can bechanged in steps of Δf_(s) as shown below.

${\Delta\; f_{s}} = \frac{f_{s,{nominal}}}{N_{nominal}}$

which results in an overall output sampling frequency f_(s) of:

$f_{s} = {\frac{N}{N_{nominal}}f_{s,{nominal}}}$

Instead of adding an extra sampling rate converter, this functionalitycan be built into the already existing QMF synthesis filter.

The workload increase is below that of a sampling rate converter withcomparable accuracy, but the sampling rate ratio cannot be arbitrary.Essentially it is determined by the ratio of the number of bands used inthe QMF analysis and QMF synthesis filter bank. Generally it isadvantageous to use a number of output bands that allows a fastcomputation of the synthesis QMF, e.g. 60, 72, 80, 48, . . . .

The same way as the output sample rate can be changed when employingQMF, the same way can the sample rate of a audio signal codec beadjusted, which uses another kind of filter bank, for example a MDCT(Modified Discrete Cosine Transform).

FIG. 6 illustrates an apparatus according to an embodiment. Theapparatus comprises a signal adjuster 125. An analysis filter bank 120is adapted to transform the analysis filter bank input signal s₁ beingrepresented in a time-domain into a first time-frequency domain audiosignal having a plurality of, e.g., 3 first subband signals s₁₁, s₁₂,s₁₃. The number of first subband signals is equal to the first number c₁of analysis filter bank channels,

The signal adjuster 125 is adapted to generate a second time-frequencydomain audio signal from the first time-frequency domain audio signalbased on the configuration setting conf. The second time-frequencydomain audio signal has a plurality of, e.g., 4 second subband signalss₂₁, s₂₂, s₂₃, s₂₄. The second time-frequency domain audio signal isgenerated such that the number of second subband signals is equal to thenumber c₂ of synthesis filter bank channels. The number of secondsubband signals of the second time-frequency domain audio signal may bedifferent from the number of subband signals of the first time-frequencydomain audio signal. Therefore, the number of subband signals may haveto be adjusted, e.g. according to one of the above-described concepts.

The synthesis filter bank 130 is adapted to transform the secondtime-frequency domain audio signal into a time-domain audio signal asthe audio signal output s₂ of the synthesis filter bank 130.

However, in other embodiments, a signal adjuster 125 may not becomprised. If the analysis filter bank 120 provides more channels thanneeded by the synthesis filter bank 130, the synthesis filter bank mayitself discard channels that are not necessary. Furthermore, thesynthesis filter bank 130 may be configured to itself use a zero subbandsignal or a signal comprising pseudorandom data, if the number ofsubband signals provided by the analysis filter bank 120 is smaller thanthe number of synthesis filter bank channels.

The apparatus according to the embodiment is particularly suitable foradapting to different situations. For example, the first audio signalprocessor 110 might need to process the audio signal s₀ such that theprocessed audio signal s₁ has a first sampling rate sr₁ in one situationand such that the processed audio signal s₁ has a second sampling ratesr₁′ being different from the first sampling rate in a second situation.For example, the first audio signal processor 110 might employ an ACELP(Algebraic Code Excited Linear Prediction) decoding tool working with afirst sampling rate of e.g. 16000 Hz while in a different secondsituation the first audio signal processor might employ an AAC (AdvancedAudio Coding) decoder, e.g. having a sampling rate of e.g. 48000 Hz.Furthermore, the situation might arise that the first audio signalprocessor employs an AAC decoder which switches between differentsampling rates.

Or, the first signal processor 110 might be adapted to switch between afirst stereo audio signal s₁ having a first sampling rate sr₁ and asecond audio s₁′ signal being an MPEG Surround signal having a secondsampling rate sr₁′.

Moreover, it might be useful to provide an audio signal to the secondaudio signal processor 140 having a certain predetermined sampling ratesr₂. For example, a digital to analogue converter employed might involvea certain sampling rate. In this case, the second signal processor 140might work with a fixed second sampling rate sr₂. However, in othercases, sampling rates of the audio signal s₂ at the second audioprocessor 140 might change at run time. For example, in a first case,the second audio signal processor 140 might switch between a first lowaudio quality D/A (digital to analogue) converter supporting arelatively low sampling rate of e.g. 24000 Hz, while in other situationsthe second audio signal processor 140 might employ a second D/Aconverter having a sampling rate of e.g. 96000 Hz. For example, insituations where the original sampling rate of the processed audiosignal sr₂ having been processed by the first audio signal processor 110has a relatively low sampling rate of e.g. 4000 Hz it might not benecessary to employ the high-quality second D/A converter having asampling rate of 96000 Hz, but instead, it is sufficient to employ thefirst D/A converter which may use fewer computational resources. It istherefore appreciated to provide an apparatus with adjustable samplingrates.

According to an embodiment, an apparatus is provided which comprises acontroller 150 which controls the first number of analysis filter bankchannels c₁ and/or the second number of synthesis filter bank channelsc₂ in accordance with a configuration setting conf provided to theconfigurable first audio signal processor 110, so that an audio signaloutput by the synthesis filter bank 130 has the predetermined samplingrate sr₂ or a sampling rate sr₂ being different from the predeterminedsampling rate sr₂, but being closer to the predetermined sampling ratesr₂ than the sampling rate sr₁ of a processed input signal s₁ into theanalysis filter bank 120.

In an embodiment, the configuration setting might contain an explicitinformation about the first sampling rate sr₁ and/or the second samplingrate sr₂. For example, the configuration setting might explicitly definethat a first sampling rate sr₁ is set to 9000 Hz and that a secondsampling rate sr₂ is set to 24000 Hz.

However, in another embodiment, the configuration setting conf may notexplicitly specify a sampling rate. Instead, an index number might bespecified which the controller might use to determine the first sr₁and/or the second sampling rate sr₂.

In an embodiment, the configuration setting conf may be provided by anadditional unit (not shown) to the controller at run time. For example,the additional unit might specify in the configuration setting conf,whether an ACELP decoder or an AAC decoder is employed.

In an alternative embodiment, the configuration setting conf is notprovided at run-time by an additional unit, but the configurationsetting conf is stored once such that it is permanently available for acontroller 150. The configuration setting conf then remains unalteredfor a longer time period.

Depending on this determination, the additional unit may send theexplicit sampling rates to the controller being comprised in theconfiguration setting conf.

In an alternative embodiment, the additional unit sends a configurationsetting conf which indicates whether a first situation exists (bytransmitting an index value “0”: indicating “ACELP decoder used”, or bytransmitting an index value “1”: indicating “AAC decoder used”). This isexplained with reference to FIGS. 7a and 7 b:

FIGS. 7a and 7b illustrate lookup tables according to an embodimentbeing available to a controller. For example, the lookup table may bepredefined lookup table being stored as a fixed table in the controller.In another embodiment, the lookup table may be provided as metainformation from an additional unit. While, for example, the lookuptable information is only sent once for a long period of time, an indexvalue specifying the current sampling rate configuration is morefrequently updated.

FIG. 7a depicts a simple lookup table allowing the resolution of asingle sampling rate, in the embodiment of FIG. 7a a sampling rate ofthe first audio signal processor 110 is specified. By receiving an indexvalue being comprised in the first configuration setting conf, thecontroller 150 is able to determine the sampling rate of the processedaudio signal s₁ being processed by the first audio signal processor 110.In the lookup table of FIG. 7a , no information about the secondsampling rate sr₂ is available. In an embodiment, the second samplingrate is a fixed sampling rate and is known by the controller 150. Inanother embodiment, the second sampling rate is determined by employinganother lookup table being similar as the lookup table illustrated inFIG. 7 a.

FIG. 7b illustrates another lookup table which comprises informationabout the first sampling rate sr₁ of the processed audio signal s₁ aswell as the second sampling rate sr₂ of the audio signal s₂ beingoutputted by the synthesis filter bank. An additional unit transmits aconfiguration setting conf comprising an index value to the controller150. The controller 150 looks up the index value in the lookup table ofFIG. 7b and thus determines the first desired sampling rate of theprocessed audio signal s₁ and the second desired sampling rate sr₂ ofthe audio signal s₂ being generated by the synthesis filter bank 140.

FIG. 8 illustrates a combination of the above-described concepts withSBR processing. If the QMF synthesis band is part of an SBR module, theresampling functionality can be integrated into the system. Inparticular, it is then possible to transmit SBR parameters to extend theactive SBR range beyond the usual 2:1 or 4:1 resampling ratio with theadditional merit that it is possible to realize almost arbitraryresampling ratios by adequately choosing the appropriate M and N of theQMF filter banks, thus increasing the degrees of freedom for overallresampling characteristic (see FIG. 8).

For example, if the number of synthesis bands is higher than 64, they donot necessarily have to be filled with zeros. Instead, the range for theSBR patching could also be extended in order to make use of this higherfrequency range.

In FIG. 8, the resulting QMF output sampling frequency is:

$f_{s,{SBR}} = {\frac{N}{M}f_{s,{Core}}}$

E.g. in case of the USAC 8 kbps operation test point, the internalsampling frequency f_(s,Core) is typically chosen to be 9.6 kHz. Whilesticking to the M=32 band QMF analysis filter bank, the synthesis couldbe replaced by an N=80 band QMF bank. This would result in an outputsampling frequency of

$f_{s,{SBR}} = {{\frac{N}{M}f_{s,{Core}}} = {{\frac{80}{32}9600\mspace{14mu}{Hz}} = {24000\mspace{14mu}{{Hz}.}}}}$

By doing so, the potential audio bandwidth which can be covered by SBRcan be increased to 12 kHz. At the same time a potential post-resamplingstep to a convenient 48 kHz can be implemented rather cheaply becausethe remaining resampling ratio is a simple 1:2 relation.

Many more combinations are conceivable which could allow a wide(r) SBRrange while maintaining the possibility to allow the core coder to runon somewhat unusual or uncommon sampling frequencies.

FIG. 9 illustrates an apparatus according to another embodimentemploying QMF analysis and synthesis filter banks for upmixing an MPEGSurround signal with a resampled sampling rate according to anembodiment. For illustrative purposes, the analysis filter bank isdepicted to generate only 3 subband signals from the inputted signal andeach one of the QMF synthesis filter banks is depicted to transform atime-frequency domain signal comprising only four subband signals backto the time domain. However, it is understood that in other embodiments,the analysis filterbank might, for example, comprise 45 channels and thesynthesis filterbank might, for example, comprise 60 channels,respectively.

In FIG. 9, a downmixed audio signal s₁ is fed into a QMF analysis filterbank 910. The QMF analysis filter bank 910 transforms the downmixed timedomain audio signal into a time-frequency domain to obtain three(downmixed) subband signals s₁₁, s₁₂, s₁₃. The three downmixed subbandsignals s₁₁, s₁₂, s₁₃ are then fed into three upmix units 921, 922, 923,respectively. Each one of the upmix units 921, 922, 923 generates fivesurround subband signals as a left, right, center, left surround andright surround subband signal, respectively. The three generated leftsubband signals are then fed into a left signal adjuster 931 for theleft subband signals. The left signal adjuster 931 generates four leftsubband signals from the three left surround subband signals and feedsthem into a left synthesis filter bank 941 which transforms the subbandsignals from the time-frequency domain to the time domain to generate aleft channel s₂₁ of the surround signal in a time domain. In the sameway, a right signal adjuster 932 and a right synthesis filter bank 942is employed to generate a right channel s₂₂, a center signal adjuster933 and a center synthesis filter bank 943 is employed to generate acenter channel s₂₃, a left surround signal adjuster 934 and a leftsurround synthesis filter bank 944 is employed to generate a leftsurround channel s₂₄, and a right surround signal adjuster 935 and aright surround synthesis filter bank 945 is employed to generate a rightsurround channel s₂₅ of the surround signal in the time domain.

A controller (950) receives a configuration setting conf and is adaptedto control the number of channels of the analysis filter bank 910 basedon the received configuration setting conf. The controller is furtheradapted to control the number of channels of the synthesis filter bankunits 941, 942, 943, 944, 945, the number of the first plurality ofinput surround subband signals of the signal adjuster units 931, 932,933, 934, 935 and the number of the second plurality of output surroundsubband signals of the signal adjuster units 931, 932, 933, 934, 935based on the received configuration setting conf.

FIG. 10 illustrates an apparatus according to another embodiment. Theembodiment of FIG. 10 differs from the embodiment of FIG. 8 in that thesignal adjuster 125 further comprises a spectral band replicator 128 forconducting a spectral band replication (SBR) of the subband signalsderived from the analysis filter bank 120 to obtain additional subbandsignals.

Conventionally, by conducting spectral band replication a plurality ofsubband signals is “replicated” such that the number of subband signalsderived from the spectral band replication is twice or four times thenumber of the subband signals available for being spectrally replicated.In a conventional spectral band replication (SBR), the number ofavailable subband signals is replicated so that e.g. 32 subband signals(resulting from an analysis filter bank transformation) are replicatedand such that 64 subband signals are available for the synthesis step.The subband signals are replicated such that the available subbandsignals form the lower subband signals, while the spectrally replicatedsubband signals from the higher subband signals being located infrequency ranges higher than the already available subband signals.

According to the embodiment depicted in FIG. 10, the available subbandsignals are replicated such that the number of subband signals resultingfrom SBR does not have to be an integer multiple of (or the same numberas) the replicated subband signals. For example, 32 subband signalsmight be replicated such that not 32 additional subband signals arederived, but, for example, 36 additional subband signals are derived andthat in total, for example, 68 instead of 64 subband signals areavailable from synthesis. The synthesis filter bank 130 of theembodiment of FIG. 10 is adjusted to process 68 channels instead of 64.

According to the embodiment illustrated in FIG. 10, the number ofchannels that are replicated by the spectral band replication and thenumber of channels that can be replicated is adjustable such that thenumber of replicated channels does not have to be an integer multiple of(or the same number as) the channels used in the spectral bandreplications. In the embodiment of FIG. 10, the controller not onlycontrols the number of channels of the synthesis filter bank 140, butdoes also control the number of channels to be replicated by thespectral band replication. For example, if the controller has determinedthat the analysis filter bank 120 has c₁ channels and the synthesisfilter bank has c₂ channels (c₂>c₁), then the number of additionalchannels that have to be derived by the spectral band replication isc₂-c₁.

If c₂>2·c₁, the question arises how to generate additional subbandsignals in the context of a spectral band replication. According to anembodiment, a zero subband signal (the amplitude values of all subbandsamples are zero) may be added for each subband signal that may beadditionally used. In another embodiment, pseudorandom data is used assample values of the additional subband signals to be generated. In afurther embodiment, the highest subband signal resulting from thespectral band replication is itself replicated: For example, theamplitude values of the highest subband signals are duplicated to formthe amplitude values of the additional one or more subband signal. Theamplitude values might be multiplied by a weighting factor. For example,each one of the amplitude values of the first additional subband signalmight be multiplied by 0.95. Each one of the amplitude values of thesecond additional subband signal might be multiplied by 0.90, etc.

In a still further embodiment, the spectral band replication is extendedto generate additional subband signals. Spectral envelope informationmight be used to generate additional subband signals from the availablelower subband signals. The spectral envelope information might be usedto derive weighting factors used to be multiplied by the amplitudevalues of the lower subband signals considered in the spectral bandreplication to generate additional subband signal.

FIG. 11 illustrates an apparatus according to another embodiment. Theapparatus differs from the apparatus illustrated in FIG. 1 in that theapparatus of FIG. 11 further comprises an additional resampler 170. Theadditional resampler 170 is used to conduct an additional resamplingstep. The resampler may be a conventional resampler or may alternativelybe an apparatus for processing an audio signal which conducts resamplingaccording to the invention. If, for example an apparatus according tothe invention is used as additional resampler, the first apparatusaccording to the invention resamples an audio signal having a firstsampling rate sr₁ to a sampling rate sr₂=c₂/c₁·sr₁. Then, the additionalresampler resamples the audio signal from a sampling rate sr₂ to asampling rate sr₂′=c₄/c₃·sr₂=c₄/c₃·c₂/c₁·sr₁. By employing tworesamplers, it is avoided that a resampler according to one of theabove-described embodiments has to have c₁·c₃ analysis channels andc₄·c₂ synthesis channels. For example, if a resampling factor of998000/996003 is desired (the resampling factor is the ratio of thesampling rate of the audio signal after synthesis to the sampling rateof the audio signal before analysis), then, an apparatus comprising tworesamplers avoids that 996003 analysis filter bank channels and 998000synthesis filter bank channels are needed. Instead, a first resamplingmay be conducted by an analysis filter bank having 999 filter bankchannels and a synthesis filter bank having 1000 channels and a secondresampling may be conducted by an analysis filter bank having 997channels and a synthesis filter bank having 998 channels.

In the embodiment, the controller 150 may be adapted to steer how tosplit the resampling factor into suitable analysis and synthesis filterbank channel values.

FIG. 12 illustrates QMF as resampler according to an embodiment. Anexample of a QMF synthesis stage with attached post-resampler to adjustthe QMF output sampling rate is depicted.

If the output sampling rate after QMF synthesis does not comply to a“standard” sampling rate, a combination of QMF based resampling and anadditional resampler can still be used in order to achieve betteroperating conditions for a resampler in case this is useful (e.g. benignsmall integer resampling ratio (or interpolate between near samplingrates, for example employing a Lagrange interpolator).

In FIG. 13, a resampler is depicted comprising an analysis unit and asynthesis unit. But since such building blocks are already present inmost current audio codecs, these already existing building blocks can beslightly changed, by means of a controlling entity, in order toaccomplish the resampling task, without requiring additionalanalysis/synthesis stages appended to the decoder system. This approachis shown in FIG. 14. In some systems it might be possible to slightlychange f_(s) in order to achieve more convenient operating points andovercome implementation constraints in regard to the overall decimationand upsampling factors.

The “Filter bank control” block shown in FIG. 13 will manipulate thefactors M and N of the decoder in order to obtain the desired outputsampling frequency f_(s,final). It takes as inputs the desired outputsampling frequency f_(s,final), the core decoder output samplingfrequency and other knowledge about the decoder. The sampling frequencyf_(s,final) may be desired to be constant, and to match the outputdevice hardware, while from the codec perspective it might be desirableto change because of coding efficiency aspects. By merging the resamplerinto the decoder both requirements, a fixed output sampling rate at theoutput and best operating sampling rate of the audio codec can be metwith almost no additional complexity and no signal degradation becauseof additional resampler processing.

The QMF prototype for the different lengths can be created from the onefor the 64 band QMF by interpolation.

The complexity of a filter bank is directly related to its length. If afilter bank time domain signal synthesis transform is modified fordownsampling by reducing the transform length, its complexity willdecrease. If it is used for upsampling by enlarging its transform lengthits complexity will increase, but still far below the complexity thatmay be involved in the use of an additional resampler with equivalentsignal distortion characteristics.

FIG. 15 illustrates an apparatus according to a further embodimentwherein the apparatus is adapted to feed a synthesis filter bank outputinto an analysis filter bank to conduct another transformation cycle. Asin the embodiment of FIG. 1, a processed audio signal s₁ is fed into ananalysis filter bank 120 where the audio signal is transferred from atime-domain into a time-frequency domain. The synthesis filter bank thentransforms the time-frequency domain signal back to the time domain,wherein the number of synthesis filter bank channels c₂ is differentfrom the number of analysis filter bank channels c₁ to generate anoutput signal s₂ with a different sampling rate than the inputtedsignal. Contrary to the embodiment of FIG. 1, however, the output signalmay not be fed into the second audio signal processor 140, but instead,may be fed again into an analysis filter bank to conduct an additionalresampling of the audio signal by an analysis filter bank and asynthesis filter bank. Different analysis filter banks and synthesisfilter banks (e.g. analysis filter bank instances and synthesis filterbank instances) may be employed in subsequent analysis/synthesis steps.The controller 150 may control the number of analysis and synthesisfilter bank channels c₁, c₂, such that the numbers are different in thesecond analysis/synthesis step than in the first analysis/synthesisstep. By this the total resampling ratio may be any be arbitrarilychosen such that it results to (c₂·c₄·c₆·c₈· . . . )/(c₁·c₃·c₅·c₇· . . .), wherein c₁, c₂, c₃, . . . are integer values.

Resampling an audio signal having a first sampling rate sr₁ such that ithas a second sampling rate sr₂ after resampling might not be easy torealize. For example, in case that a sampling frequency of 22050 Hzshall be resampled to a sampling frequency of 23983 Hz, it would becomputationally expensive to realize an analysis filter bank having22050 channels and a synthesis filter bank having 23983 channels.However, although it might be desirable to exactly realize the outputsampling frequency of 23983 Hz the user (or another application) mighttolerate an error as long as the error is within acceptable bounds.

FIG. 16 illustrates a controller according to another embodiment. Afirst sampling rate sr₁ and a second desired sampling rate sr₂ are fedinto the controller. The first sampling rate specifies the sampling rateof a (processed) audio signal s₁ that is fed into an analysis filterbank. The second desired sampling rate sr₂ specifies a desired samplingrate that the audio signal s₂ shall exhibit when being outputted from asynthesis filter bank. Furthermore, a tolerable error e is also fed intothe controller. The tolerable error e specifies to what degree an actualsampling rate sr₂′ of a signal outputted from the synthesis filter bankmight deviate from the desired sampling rate sr₂.

The first sampling rate sr₁ and the second desired sampling rate sr₂ arefed into a synthesis channel number chooser 1010. The synthesis channelnumber chooser 1010 chooses a suitable number of channels c₂ of thesynthesis filter bank. Some numbers of synthesis filter bank channels c₂might be particularly suitable to allow fast computation, of the signaltransformation from a time-frequency domain to a time domain, e.g. 60,72, 80 or 48 channels. The synthesis channel number chooser 1010 mightchoose the synthesis channel number c₂ depending on the first and secondsampling rate sr₁, sr₂. For example, if the resampling ratio is aninteger number, for example 3 (resulting e.g. from sampling ratessr₁=16000 Hz and sr₂=48000 Hz), it might be sufficient that thesynthesis channel number is a small number, e.g. 30. In other situationsit might be more useful to choose a bigger synthesis channel number, forexample, if the sampling rates are high and if the sampling rate ratiois not an integer number (e.g., if sr₁=22050 Hz and sr₂ is 24000 Hz): Insuch a case, the synthesis channel number might, for example, beselected as c₂=2000).

In alternative embodiments, only the first sr₁ or the second sr₂sampling rate is fed into the synthesis channel number chooser 1010. Instill further embodiments, neither the first sr₁ nor the second sr₂sampling rate is fed into the synthesis channel number chooser 1010, andthe synthesis channel number chooser 1010 then chooses a synthesischannel number c₂ independent of the sampling rates sr₁, sr₂.

The synthesis channel number chooser 1010 feeds the chosen synthesischannel number c₂ into an analysis channel number calculator 1020.Furthermore, the first and second sampling rate sr₁ and sr₂ are also fedinto the analysis channel number calculator 1020. The analysis channelnumber calculator calculates the number of analysis filter bank channelsc₁ depending on the first and second sampling rate sr₁ and sr₂ and thesynthesis channel number c₂ according to the formula:c ₁ =c ₂ ·sr ₁ /sr ₂.

Often, the situation may arise that the calculated number c₁ is not aninteger number, but a value being different from an integer number.However, the number of analysis filter bank channels (as well as thenumber of synthesis filter bank channels) has to be an integer. Forexample, if a first sampling rate sr₁ is sr₁=22050 Hz, the seconddesired sampling rate sr₂ is sr₂=24000 Hz and the number of synthesisfilter bank channels c₂ has been chosen such that c₂=2000, then thecalculated number of analysis channels c₁ isc₁=c₂·sr₁/sr₂=2000·22050/24000=1837.5 analysis channels. Therefore, adecision has to be taken, whether the analysis filter bank shouldcomprise 1837 or 1838 channels.

Different rounding strategies may be applied:

According to one embodiment, a first rounding strategy is applied,according to which the next lower integer value is chosen as analysischannel number, if the calculated value is not an integer. E.g. acalculated value of 1837.4 or 1837.6 would be rounded to 1837.

According to another embodiment, a second rounding strategy is applied,according to which the next higher integer value is chosen as analysischannel number, if the calculated value is not an integer. E.g. acalculated value of 1837.4 or 1837.6 would be rounded to 1838.

According to a still further embodiment, arithmetic rounding is applied.E.g. a calculated value of 1837.5 would be rounded to 1838 and acalculated value of 1837.4 would be rounded to 1837.

However, as it is not possible in the “1837.5” example to apply theexact value of the calculation as the number of analysis filter bankchannels, not the desired second sampling rate sr₂, but a deviatingactual second sampling rate sr₂′ will be obtained.

The controller of the embodiment of FIG. 16 comprises a sampling ratetwo calculator 1030, which calculates the actual second sampling ratesr₂′ based the first sampling rate sr₁, the chosen number of synthesisfilter bank channels c₂ and the calculated number of analysis filterbank channels c₁ according to the formula:sr ₂ ′=c ₂ /c ₁ ·sr ₁.

E.g. in the above described example, assuming that the first samplingrate sr₁ is sr₁=22050 Hz, that the number of synthesis filter bankchannels is c₂=2000 and selecting the number of analysis filter bankchannels c₁ to be 1838 this results in an actual second sampling rateof:

sr₂′=c₂/c₁·sr₁=2000/1838·22050 Hz=23993.47 Hz instead of the desired24000 Hz.

Applying an analysis filter bank having 1837 channels would result in anactual second sampling rate of:

sr₂′=c₂/c₁·sr₁=2000/1837·22050 Hz=24006.53 Hz instead of the desired24000 Hz.

The actual second sampling rate sr₂′ of the audio signal being outputtedfrom the synthesis filter bank and the desired sampling rate sr₂ are thefed into an error calculator 1040. The error calculator calculates anactual error e′ representing the difference between the desired samplingrate sr₂ and the actual sampling rate sr₂′ according to the selectedanalysis and synthesis filter bank channel setting.

In an embodiment, the actual error e′ might be an absolute value of thedifference between the desired sampling rate sr₂ and the actual samplingrate according to the formula:e′=|sr ₂ −sr ₂′|.

In another embodiment, the actual error e′ might be a relative value,e.g. calculated according to the formula:e′=|(sr ₂ −sr ₂′)/sr ₂|.

The error calculator then passes the actual error e′ to an errorcomparator 1050. The error comparator then compares the actual error e′with the tolerable error e. If the actual error e′ is within the boundsdefined by the tolerable error, for example, if |e′|≤|e|, then the errorcomparator 1050 instructs a channel number passer 1060 to pass theactual calculated number of analysis filter bank channels to theanalysis filter bank and the determined number of the synthesis filterbank channels to the synthesis filter bank, respectively.

However, if the actual error e′ is within the bounds defined by thetolerable error, for example, if |e′|>|e|, then the error comparator1060 starts the determination process from the beginning and instructsthe synthesis channel number chooser 1010 to choose a differentsynthesis channel number as number of synthesis filter bank channels.

Different embodiments may realize different strategies to choose a newsynthesis channel number. For example, in an embodiment, a synthesischannel number may be chosen randomly. In another embodiment, a higherchannel number is chosen, e.g. a channel number being twice the size ofthe synthesis channel number that was chosen by the synthesis channelnumber chooser 1010, before. E.g. sr₂:=2·sr₂. For example, in theabove-mentioned example, the channel number sr₂=2000 is replaced bysr₂:=2·sr₂=2·2000=4000.

The process continues until a synthesis channel number with anacceptable actual error e′ has been found.

FIG. 17 illustrates a flow chart depicting a corresponding method. Instep 1110, a synthesis channel number c₂ is chosen. In step 1120, theanalysis channel number c₁ is calculated based on the chosen synthesischannel number c₂, the first sampling rate sr₁ and the desired samplingrate sr₂. If need be, rounding is performed to determine the analysischannel number c₁. In step 1130, the actual second sampling rate iscalculated based on the first sampling rate sr₁, the chosen number ofsynthesis filter bank channels c₂ and the calculated number of analysisfilter bank channels c₁. Furthermore, in step 1140, an actual error e′representing a difference between the actual second sampling rate sr₂′and the desired second sampling rate sr₂ is calculated. In step 1150,the actual error e′ is compared with a defined tolerable error e. Incase the error is tolerable, the process continues with step 1160: Thechosen synthesis channel number is passed to the synthesis filter bankand the calculated analysis channel number is passed to the analysisfilter bank, respectively. If the error is not tolerable, the processcontinues with step 1110, a new synthesis channel number is chosen andthe process is repeated until a suitable analysis and synthesis filterbank channel number has been determined.

FIG. 18 illustrates a controller according to a further embodiment. Theembodiment of FIG. 18 differs from the embodiment of FIG. 16 in that thesynthesis channel number chooser 1010 is replaced by an analysis channelnumber chooser 1210 and that the analysis channel number calculator 1020is replaced by a synthesis channel number calculator 1220. Instead ofchoosing a synthesis channel number c₂, the analysis channel numberchooser 1210 chooses an analysis channel number c₁. Then, the synthesischannel number calculator 1220 calculates a synthesis channel number c₂according to the formula c₂=c₁·sr₂/sr₁. The calculated synthesis channelnumber c₂ is then passed to the sampling rate two calculator 1230, whichalso receives the chosen analysis channel number c₁, the first samplingrate sr₁ and the desired second sampling rate sr₂. Apart from that, thesampling rate two calculator 1230, the error calculator 1240, the errorcomparator 1250 and the channel number passer 1260 correspond to thesampling rate two calculator 1030, the error calculator 1040, the errorcomparator 1050 and the channel number passer 1060 of the embodiment ofFIG. 16, respectively.

Although some aspects have been described in the context of anapparatus, it is clear that these aspects also represent a descriptionof the corresponding method, where a block or device corresponds to amethod step or a feature of a method step. Analogously, aspectsdescribed in the context of a method step also represent a descriptionof a corresponding block or item or feature of a correspondingapparatus.

The inventive decomposed signal can be stored on a digital storagemedium or can be transmitted on a transmission medium such as a wirelesstransmission medium or a wired transmission medium such as the Internet.

Depending on certain implementation requirements, embodiments of theinvention can be implemented in hardware or in software. Theimplementation can be performed using a digital storage medium, forexample a floppy disk, a DVD, a CD, a ROM, a PROM, an EPROM, an EEPROMor a FLASH memory, having electronically readable control signals storedthereon, which cooperate (or are capable of cooperating) with aprogrammable computer system such that the respective method isperformed.

Some embodiments according to the invention comprise a non-transitorydata carrier having electronically readable control signals, which arecapable of cooperating with a programmable computer system, such thatone of the methods described herein is performed.

Generally, embodiments of the present invention can be implemented as acomputer program product with a program code, the program code beingoperative for performing one of the methods when the computer programproduct runs on a computer. The program code may for example be storedon a machine readable carrier.

Other embodiments comprise the computer program for performing one ofthe methods described herein, stored on a machine readable carrier.

In other words, an embodiment of the inventive method is, therefore, acomputer program having a program code for performing one of the methodsdescribed herein, when the computer program runs on a computer.

A further embodiment of the inventive methods is, therefore, a datacarrier (or a digital storage medium, or a computer-readable medium)comprising, recorded thereon, the computer program for performing one ofthe methods described herein.

A further embodiment of the inventive method is, therefore, a datastream or a sequence of signals representing the computer program forperforming one of the methods described herein. The data stream or thesequence of signals may for example be configured to be transferred viaa data communication connection, for example via the Internet.

A further embodiment comprises a processing means, for example acomputer, or a programmable logic device, configured to or adapted toperform one of the methods described herein.

A further embodiment comprises a computer having installed thereon thecomputer program for performing one of the methods described herein.

In some embodiments, a programmable logic device (for example a fieldprogrammable gate array) may be used to perform some or all of thefunctionalities of the methods described herein. In some embodiments, afield programmable gate array may cooperate with a microprocessor inorder to perform one of the methods described herein. Generally, themethods are advantageously performed by any hardware apparatus.

While this invention has been described in terms of several embodiments,there are alterations, permutations, and equivalents which fall withinthe scope of this invention. It should also be noted that there are manyalternative ways of implementing the methods and compositions of thepresent invention. It is therefore intended that the following appendedclaims be interpreted as including all such alterations, permutationsand equivalents as fall within the true spirit and scope of the presentinvention.

The invention claimed is:
 1. An apparatus for processing an audiosignal, comprising: a configurable first audio signal processor forprocessing the audio signal in accordance with different configurationsettings to obtain a processed audio signal, wherein the apparatus isadapted so that different configuration settings result in differentsampling rates of the processed audio signal, an analysis filter bankhaving a first number of analysis filter bank channels, a synthesisfilter bank having a second number of synthesis filter bank channels, acontroller for controlling the first number of analysis filter bankchannels or the second number of synthesis filter bank channels inaccordance with a configuration setting provided to the configurablefirst audio signal processor, so that an audio signal output of thesynthesis filter bank has a predetermined sampling rate or a samplingrate being different from the predetermined sampling rate and beingcloser to the predetermined sampling rate than a sampling rate of ananalysis filter bank input signal, and a second audio processor beingadapted to receive and process the audio signal output of the synthesisfilter bank having the predetermined sampling rate or the sampling ratebeing different from the predetermined sampling rate and being closer tothe predetermined sampling rate than the sampling rate of the analysisfilter bank input signal, wherein the apparatus is adapted to receivethe configuration setting at run time.
 2. An apparatus according toclaim 1, wherein the analysis filter bank is adapted to transform theanalysis filter bank input signal being represented in a time-domaininto a first time-frequency domain audio signal having a plurality offirst subband signals, wherein the number of first subband signals isequal to the first number of analysis filter bank channels, wherein theapparatus further comprises a signal adjuster being adapted to generatea second time-frequency domain audio signal having a plurality of secondsubband signals from the first time-frequency domain audio signal basedon the configuration setting, such that the number of second subbandsignals of the second time-frequency domain audio signal is equal to thenumber of synthesis filter bank channels, and wherein the number ofsecond subband signals of the second time-frequency domain audio signalis different from the number of subband signals of the firsttime-frequency domain audio signal, and wherein the synthesis filterbank is adapted to transform the second time-frequency domain audiosignal into a time domain audio signal as the audio signal output of thesynthesis filter bank.
 3. An apparatus according to claim 2, wherein thesignal adjuster is adapted to generate the second time-frequency domainaudio signal by generating at least one additional subband signal.
 4. Anapparatus according to claim 3, wherein the signal adjuster is adaptedto generate at least one additional subband signal by conductingspectral band replication to generate at least one additional subbandsignal.
 5. An apparatus according to claim 3, wherein the signaladjuster is adapted to generate a zero signal as additional subbandsignal.
 6. An apparatus according to claim 1, wherein the analysisfilter bank is a QMF analysis filter bank and wherein the synthesisfilter bank is a QMF synthesis filter bank.
 7. An apparatus according toclaim 1, wherein the analysis filter bank is an MDCT analysis filterbank and wherein the synthesis filter bank is an MDCT synthesis filterbank.
 8. An apparatus according to claim 1, wherein the apparatusfurthermore comprises an additional resampler being adapted to receive asynthesis filter bank output signal having a first synthesis samplingrate, and wherein the additional resampler resamples the synthesisfilter bank output signal to receive a resampled output signal having asecond synthesis sampling rate.
 9. An apparatus according claim 1,wherein the apparatus is adapted to feed a synthesis filter bank outputsignal having a first synthesis sampling rate into an analysis filterbank as an analysis filter bank input signal.
 10. An apparatus accordingto claim 1, wherein the controller is adapted to receive a configurationsetting comprising an index number and wherein the controller is adaptedto determine the sampling rate of the processed audio signal or thepredetermined sampling rate based on the index number and a lookuptable.
 11. An apparatus according to claim 1, wherein the controller isadapted to determine the first number of analysis filter bank channelsor the second number of synthesis filter bank channels based on atolerable error.
 12. An apparatus according to claim 11, wherein thecontroller comprises an error comparator for comparing the actual errorwith a tolerable error.
 13. An apparatus for upmixing a surround signalcomprising: an analysis filter bank for transforming a downmixed timedomain signal into a time-frequency domain to generate a plurality ofdownmixed subband signals, at least two upmix units for upmixing theplurality of downmixed subband signals to obtain a plurality of surroundsubband signals, at least two signal adjuster units for adjusting thenumber of surround subband signals, wherein the at least two signaladjuster units are adapted to receive a first plurality of inputsurround subband signals, wherein the at least two signal adjuster unitsare adapted to output a second plurality of output surround subbandsignals, and wherein the number of the first plurality of input surroundsubband signals and the number of the second plurality of outputsurround subband signals is different, a plurality of synthesis filterbank units for transforming the second plurality of output surroundsubband signals from a time-frequency domain to a time domain to obtaintime domain surround output signals, and a controller being adapted toreceive a configuration setting and being adapted to control a number ofchannels of the analysis filter bank, to control a number of channels ofthe synthesis filter bank, to control the number of the first pluralityof input surround subband signals of the signal adjuster units, or tocontrol the number of the second plurality of output surround subbandsignals of the signal adjuster units based on the received configurationsetting, wherein the apparatus is adapted to receive the configurationsetting at run time.
 14. A method for upmixing a surround signal, themethod comprising: transforming, using an analysis filterbank, adownmixed time domain signal into a time-frequency domain to generate aplurality of downmixed subband signals, upmixing the plurality ofdownmixed subband signals to obtain a plurality of surround subbandsignals, adjusting the number of surround subband signals comprisingreceiving a first plurality of input surround subband signals,outputting a second plurality of output surround subband signals, andwherein the number of the first plurality of input surround subbandsignals and the number of the second plurality of output surroundsubband signals is different, transforming, using a synthesisfilterbank, the second plurality of output surround subband signals froma time-frequency domain to a time domain to obtain time domain surroundoutput signals, and receiving a configuration setting and controlling anumber of channels of the analysis filter bank, controlling a number ofchannels of the synthesis filter bank, controlling the number of thefirst plurality of input surround subband signals, or controlling thenumber of the second plurality of output surround subband signals basedon the received configuration setting, wherein the configuration settingis received at run time.
 15. A method for processing an audio signal,comprising: processing an audio signal in accordance with differentconfiguration settings being received at run time to obtain a firstprocessed audio signal, so that different configuration settings resultin different sampling rates of the first processed audio signal,controlling a first number of analysis filter bank channels of ananalysis filter bank or a second number of synthesis filter bankchannels of a synthesis filter bank in accordance with a configurationsetting, so that an audio signal output by the synthesis filter bank hasthe predetermined sampling rate or a sampling rate being different fromthe predetermined sampling rate and being closer to the predeterminedsampling rate than the sampling rate of an input signal into theanalysis filter bank, and processing an audio signal having apredetermined sampling rate or a sampling rate being different from thepredetermined sampling rate and being closer to the predeterminedsampling rate.
 16. A non-transitory storage medium having stored thereona computer program for performing, when the computer program is executedby a computer or a processor, a method for processing an audio signal,the method comprising: processing an audio signal in accordance withdifferent configuration settings being received at run time to obtain afirst processed audio signal, so that different configuration settingsresult in different sampling rates of the first processed audio signal,controlling a first number of analysis filter bank channels of ananalysis filter bank or a second number of synthesis filter bankchannels of a synthesis filter bank in accordance with a configurationsetting, so that an audio signal output by the synthesis filter bank hasthe predetermined sampling rate or a sampling rate being different fromthe predetermined sampling rate and being closer to the predeterminedsampling rate than the sampling rate of an input signal into theanalysis filter bank, and processing an audio signal having apredetermined sampling rate or a sampling rate being different from thepredetermined sampling rate and being closer to the predeterminedsampling rate.
 17. A non-transitory storage medium having stored thereona computer program for performing, when the computer program is executedby a computer or a processor, a method for upmixing a surround signal,the method comprising: transforming, using an analysis filterbank, adownmixed time domain signal into a time-frequency domain to generate aplurality of downmixed subband signals, upmixing the plurality ofdownmixed subband signals to obtain a plurality of surround subbandsignals, adjusting the number of surround subband signals comprisingreceiving a first plurality of input surround subband signals,outputting a second plurality of output surround subband signals, andwherein the number of the first plurality of input surround subbandsignals and the number of the second plurality of output surroundsubband signals is different, transforming, using a synthesisfilterbank, the second plurality of output surround subband signals froma time-frequency domain to a time domain to obtain time domain surroundoutput signals, and receiving a configuration setting and controlling anumber of channels of the analysis filter bank, controlling a number ofchannels of the synthesis filter bank, controlling the number of thefirst plurality of input surround subband signals, or controlling thenumber of the second plurality of output surround subband based on thereceived configuration setting, wherein the configuration setting isreceived at run time.